package cn.csc.module.distribute.convert.distributor;

import cn.csc.framework.common.pojo.PageResult;
import cn.csc.module.distribute.controller.admin.distributor.vo.DistributorExcelVO;
import cn.csc.module.distribute.controller.admin.distributor.vo.DistributorRespVO;
import cn.csc.module.distribute.controller.admin.distributor.vo.DistributorUpdateReqVO;
import cn.csc.module.distribute.controller.app.distributor.vo.AppDistributeInfoRespVO;
import cn.csc.module.distribute.controller.app.distributor.vo.AppDistributorCreateReqVO;
import cn.csc.module.distribute.controller.app.distributor.vo.AppDistributorGetByChildUserIdRespVO;
import cn.csc.module.distribute.controller.app.distributor.vo.AppDistributorRespVO;
import cn.csc.module.distribute.dal.dataobject.distributor.DistributorDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 分销员信息 Convert
 *
 * @author liuchuang
 */
@Mapper
public interface DistributorConvert {

    DistributorConvert INSTANCE = Mappers.getMapper(DistributorConvert.class);

    DistributorDO convert(AppDistributorCreateReqVO bean);

    DistributorDO convert(DistributorUpdateReqVO bean);

    DistributorRespVO convert(DistributorDO bean);

    AppDistributorRespVO convert1(DistributorDO bean);

    AppDistributorGetByChildUserIdRespVO convert2(DistributorDO bean);

    AppDistributeInfoRespVO convert3(DistributorDO bean);

    List<DistributorRespVO> convertList(List<DistributorDO> list);

    PageResult<DistributorRespVO> convertPage(PageResult<DistributorDO> page);

    List<DistributorExcelVO> convertList02(List<DistributorDO> list);

}
